The field of data processing encompasses a variety of systems and processes including, for example, computers, data networks, communications devices and associated processes. Data processing systems such as these perform a variety of operations. For example, a computer may execute different applications. Data network components may support a variety of data format standards and transfer data at a variety of data rates. A communication device may support a variety of protocols.
Many conventional data processing systems are configurable. For example, a computer may be configured to invoke particular applications when it is reset. A data network device may be configured to support a particular data rate when it is first powered on.
Some systems may be configured “in the field.” That is, the system may be configured after it has been shipped from the manufacturer to a customer. This may be accomplished, for example, by modifying configuration information associated with the system.
Typically, a configurable system will include one or more data registers to store the configuration information. Thus, these systems may be configured and/or reconfigured by changing the configuration information in the register. During operation, the system accesses the configuration information and performs operations associated with that particular configuration.
Conventional data memories used to store configuration information include, for example, hard-wired registers, onetime programmable (“OTP”) data memories and, in some cases, reprogrammable memories such as random access memory (“RAM”). Hard-wired registers typically are programmed at the factory. For example, a fusable register in an integrated circuit may be blown before the integrated circuit is sent to a customer. OTP devices, as their name implies, may be programmed once. These devices may be used where it is desirable to configure a system in the field only one time. Reprogrammable memories may be used where it is desirable to reconfigure a system more than one time.
Data memories devices such as these may have disadvantages in some applications. For example, hard-wired devices typically are not field programmable. OTP devices cannot used in systems that need to be reconfigured more than once. Reprogrammable memories are susceptible to being rewritten by unauthorized parties. As a result, a need exists for improved systems and methods for configuring data processing systems and processes.